package com.iyunwen.datatool.rule;

import com.iyunwen.datatool.model.dbdo.EventDataDO;
import com.iyunwen.datatool.model.vo.EventGroupVO;

import java.util.List;

/**
 * @description:
 * @author: Zhu.Guodong
 * @create: 2020-03-16 20:39
 * @version:
 */
public interface ISignalAttentionRuleEngine {

    /**
     * 是否是关注的信号数据
     * @param eventDataDO
     * @return
     */
    boolean isAttentionSignal(EventDataDO eventDataDO);

    /**
     * 是否是关联的信号数据
     * @param indexEventData
     * @param compareEventData
     * @return
     */
    boolean isRelateAttentionSignal(EventDataDO indexEventData, EventDataDO compareEventData);

    /**
     * 获取关联时间段内的相关数据组合
     * @param eventData
     * @param rangeDataList
     * @return
     */
    EventGroupVO getGroupByEventDataAndRangeData(EventDataDO eventData, List<EventDataDO> rangeDataList);
}
